package com.yuanheng100.ems4j.model;

import java.io.Serializable;
import java.util.Date;

public class Ems4jEmployee implements Serializable{
    
    private static final long serialVersionUID = -9124889858778001303L;

    /**
     *员工Id。钉钉：userid；微信：userid
     */
    private Integer userid;

    /**
     *员工姓名。钉钉：name；微信：name
     */
    private String name;

    /**
     *部门Id。钉钉：department；微信：department
     */
    private Integer department;

    /**
     *手机号码，企业内必须唯一。钉钉：mobile；微信：mobile
     */
    private Long mobile;

    /**
     *邮箱。钉钉：email；微信：email
     */
    private String email;

    /**
     *职位信息。钉钉：position；微信：position
     */
    private String position;

    /**
     *登录密码，MD5 32位
     */
    private String password;

    /**
     *身份证号
     */
    private String idcardno;

    /**
     *入职日期
     */
    private Date entrydate;

    /**
     *注销日期
     */
    private Date deletedate;

    /**
     *员工状态 1在职，2休假，3离职。对应微信：enable 启用/禁用成员；钉钉：目前似乎还没有状态码字段，只能调用删除接口
     */
    private Short empstatus;

    /**
     *所属应用id集合，Json格式数组。如果为空，则继承自此员工直接所属部门的appIds
     */
    private String appids;

    /**
     *weixin - 微信号。企业内必须唯一。（注意：是微信号，不是微信的名字）
     */
    private String weixinid;

    /**
     *weixin - 成员头像的mediaid，通过多媒体接口上传图片获得的mediaid
     */
    private String weixinavatarmediaid;

    /**
     *对应钉钉：tel 分机号
     */
    private Integer dingtel;

    /**
     *对应钉钉：workPlace 办公地点
     */
    private String dingworkplace;

    /**
     *对应钉钉：jobnumber 员工工号。对应显示到OA后台和客户端个人资料的工号栏目。长度为0~64个字符
     */
    private String dingjobnumber;

    /**
     *dingding - 是否高管模式，true表示是，false表示不是。开启后，手机号码对所有员工隐藏。普通员工无法对其发DING、发起钉钉免费商务电话。高管之间不受影响。
     */
    private Short dingissenior;

    /**
     *对应钉钉：isLeaderInDepts 在对应的部门中是否为主管, Map结构的json字符串, key是部门的Id, value是人员在这个部门中是否为主管, true表示是, false表示不是
     */
    private String dingisleaderindepts;

    /**
     *员工Id。钉钉：userid；微信：userid
     */
    public Integer getUserid() {
        return userid;
    }

    /**
     *员工Id。钉钉：userid；微信：userid
     */
    public void setUserid(Integer userid) {
        this.userid = userid;
    }

    /**
     *员工姓名。钉钉：name；微信：name
     */
    public String getName() {
        return name;
    }

    /**
     *员工姓名。钉钉：name；微信：name
     */
    public void setName(String name) {
        this.name = name == null ? null : name.trim();
    }

    /**
     *部门Id。钉钉：department；微信：department
     */
    public Integer getDepartment() {
        return department;
    }

    /**
     *部门Id。钉钉：department；微信：department
     */
    public void setDepartment(Integer department) {
        this.department = department;
    }

    /**
     *手机号码，企业内必须唯一。钉钉：mobile；微信：mobile
     */
    public Long getMobile() {
        return mobile;
    }

    /**
     *手机号码，企业内必须唯一。钉钉：mobile；微信：mobile
     */
    public void setMobile(Long mobile) {
        this.mobile = mobile;
    }

    /**
     *邮箱。钉钉：email；微信：email
     */
    public String getEmail() {
        return email;
    }

    /**
     *邮箱。钉钉：email；微信：email
     */
    public void setEmail(String email) {
        this.email = email == null ? null : email.trim();
    }

    /**
     *职位信息。钉钉：position；微信：position
     */
    public String getPosition() {
        return position;
    }

    /**
     *职位信息。钉钉：position；微信：position
     */
    public void setPosition(String position) {
        this.position = position == null ? null : position.trim();
    }

    /**
     *登录密码，MD5 32位
     */
    public String getPassword() {
        return password;
    }

    /**
     *登录密码，MD5 32位
     */
    public void setPassword(String password) {
        this.password = password == null ? null : password.trim();
    }

    /**
     *身份证号
     */
    public String getIdcardno() {
        return idcardno;
    }

    /**
     *身份证号
     */
    public void setIdcardno(String idcardno) {
        this.idcardno = idcardno == null ? null : idcardno.trim();
    }

    /**
     *入职日期
     */
    public Date getEntrydate() {
        return entrydate;
    }

    /**
     *入职日期
     */
    public void setEntrydate(Date entrydate) {
        this.entrydate = entrydate;
    }

    /**
     *注销日期
     */
    public Date getDeletedate() {
        return deletedate;
    }

    /**
     *注销日期
     */
    public void setDeletedate(Date deletedate) {
        this.deletedate = deletedate;
    }

    /**
     *员工状态 1在职，2休假，3离职。对应微信：enable 启用/禁用成员；钉钉：目前似乎还没有状态码字段，只能调用删除接口
     */
    public Short getEmpstatus() {
        return empstatus;
    }

    /**
     *员工状态 1在职，2休假，3离职。对应微信：enable 启用/禁用成员；钉钉：目前似乎还没有状态码字段，只能调用删除接口
     */
    public void setEmpstatus(Short empstatus) {
        this.empstatus = empstatus;
    }

    /**
     *所属应用id集合，Json格式数组。如果为空，则继承自此员工直接所属部门的appIds
     */
    public String getAppids() {
        return appids;
    }

    /**
     *所属应用id集合，Json格式数组。如果为空，则继承自此员工直接所属部门的appIds
     */
    public void setAppids(String appids) {
        this.appids = appids == null ? null : appids.trim();
    }

    /**
     *weixin - 微信号。企业内必须唯一。（注意：是微信号，不是微信的名字）
     */
    public String getWeixinid() {
        return weixinid;
    }

    /**
     *weixin - 微信号。企业内必须唯一。（注意：是微信号，不是微信的名字）
     */
    public void setWeixinid(String weixinid) {
        this.weixinid = weixinid == null ? null : weixinid.trim();
    }

    /**
     *weixin - 成员头像的mediaid，通过多媒体接口上传图片获得的mediaid
     */
    public String getWeixinavatarmediaid() {
        return weixinavatarmediaid;
    }

    /**
     *weixin - 成员头像的mediaid，通过多媒体接口上传图片获得的mediaid
     */
    public void setWeixinavatarmediaid(String weixinavatarmediaid) {
        this.weixinavatarmediaid = weixinavatarmediaid == null ? null : weixinavatarmediaid.trim();
    }

    /**
     *对应钉钉：tel 分机号
     */
    public Integer getDingtel() {
        return dingtel;
    }

    /**
     *对应钉钉：tel 分机号
     */
    public void setDingtel(Integer dingtel) {
        this.dingtel = dingtel;
    }

    /**
     *对应钉钉：workPlace 办公地点
     */
    public String getDingworkplace() {
        return dingworkplace;
    }

    /**
     *对应钉钉：workPlace 办公地点
     */
    public void setDingworkplace(String dingworkplace) {
        this.dingworkplace = dingworkplace == null ? null : dingworkplace.trim();
    }

    /**
     *对应钉钉：jobnumber 员工工号。对应显示到OA后台和客户端个人资料的工号栏目。长度为0~64个字符
     */
    public String getDingjobnumber() {
        return dingjobnumber;
    }

    /**
     *对应钉钉：jobnumber 员工工号。对应显示到OA后台和客户端个人资料的工号栏目。长度为0~64个字符
     */
    public void setDingjobnumber(String dingjobnumber) {
        this.dingjobnumber = dingjobnumber == null ? null : dingjobnumber.trim();
    }

    /**
     *dingding - 是否高管模式，true表示是，false表示不是。开启后，手机号码对所有员工隐藏。普通员工无法对其发DING、发起钉钉免费商务电话。高管之间不受影响。
     */
    public Short getDingissenior() {
        return dingissenior;
    }

    /**
     *dingding - 是否高管模式，true表示是，false表示不是。开启后，手机号码对所有员工隐藏。普通员工无法对其发DING、发起钉钉免费商务电话。高管之间不受影响。
     */
    public void setDingissenior(Short dingissenior) {
        this.dingissenior = dingissenior;
    }

    /**
     *对应钉钉：isLeaderInDepts 在对应的部门中是否为主管, Map结构的json字符串, key是部门的Id, value是人员在这个部门中是否为主管, true表示是, false表示不是
     */
    public String getDingisleaderindepts() {
        return dingisleaderindepts;
    }

    /**
     *对应钉钉：isLeaderInDepts 在对应的部门中是否为主管, Map结构的json字符串, key是部门的Id, value是人员在这个部门中是否为主管, true表示是, false表示不是
     */
    public void setDingisleaderindepts(String dingisleaderindepts) {
        this.dingisleaderindepts = dingisleaderindepts == null ? null : dingisleaderindepts.trim();
    }
}